1.16. Графика
★ Графика – визуальное представление данных, от простых иконок до сложных 3D-сцен. В компьютерах она делится на двумерную (2D) и трёхмерную (3D), а также на растровую и векторную. Разберёмся, чем они отличаются и где применяются.
2D и 3D
★ 2D-графика – плоские изображения, имеющие только ширину и высоту (X и Y). Примеры – фотографии, иконки, интерфейсы, рисунки в графических редакторах (Photoshop, Paint), 2D-анимация (мультфильмы, аниме, мультяшная графика в играх – Cuphead, платформерах старой школы, допустим, эпохи NES/Dendy). В двумерной графике используются пиксели (растр) или математические кривые (вектор).
★ 3D-графика – объекты, имеющие дополнительную, третью, Z-ось – глубину, а также обладает объёмом и перспективой. Примеры – видеоигры, кино, архитектурные визуализации. Трёхмерная графика создаётся посредством трёх составляющих:
- моделирование – создание 3D-объектов (кубы, сферы, сложные формы);
- текстурирование – наложение изображение на модель;
- освещение и рендеринг – расчёт лучей света, теней, отражений, отрисовка итогового изображения.
Разница 2D и 3D
| Характеристика | 2D | 3D |
|---|---|---|
| Измерения | X, Y | X, Y, Z |
| Объём | Нет | Есть |
| Примеры | Фото, иконки, интерфейсы | Игры, CGI-анимация, VR/AR, кино, видеоигры |
В разработке Моделирование — создание 3D-объектов (Blender, Maya, 3ds Max).
Трансформации — перемещение, вращение, масштабирование (матрицы 4x4).
Проекция — переход от 3D к 2D (перспективная, ортогональная).
Рендеринг — расчёт цвета пикселей (растеризация, ray tracing).
Шейдеры — программы, управляющие отображением (vertex, fragment, compute).
API: OpenGL, Vulkan, DirectX, Metal, WebGL.
В разработке